SwingStates: adding state machines to Java and the Swing toolkit

نویسندگان

  • Caroline Appert
  • Michel Beaudouin-Lafon
چکیده

This article describes SwingStates, a Java toolkit designed to facilitate the development of graphical user interfaces and bring advanced interaction techniques to the Java platform. SwingStates is based on the use of finite-state machines specified directly in Java to describe the behavior of interactive systems. State machines can be used to redefine the behavior of existing Swing widgets or, in combination with a new canvas widget that features a rich graphical model, to create brand new widgets. SwingStates also supports arbitrary input devices to implement novel interaction techniques based, for example, on bi-manual or pressure-sensitive input. We have used SwingStates in several Master’s level classes over the past two years and have developed a benchmark approach to evaluate the toolkit in this context. The results demonstrate that SwingStates can be used by non-expert developers with little training to successfully implement advanced interaction techniques.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

A portable AWT/Swing architecture for Java game development

Recently, the performance of Java platforms has been greatly improved to satisfy the requirements for game development. However, the rendering performance of Java 1.1, which is still used by about one-third of current Web browser users, is not sufficient for high-profile games. Therefore, practically, Java game developers, especially those who use applets, have to take this into consideration i...

متن کامل

Integrating Gui Prototyping into Uml Toolkit

This paper introduces an extension of UML for modeling GUI prototypes. It presents the UML profile for GUI modeling, its implementation in MagicDraw, and its application to an experimental system. The profile contains stereotypes for the major GUI components that can be found in classic GUI libraries like Java Swing and several helper stereotypes and enumerations. While UML only allows defining...

متن کامل

Achieving high and consistent rendering performance of Java AWT/Swing on multiple platforms

Wang et al. (Softw. Pract. Exper. 2007; 37(7):727–745) observed a phenomenon of performance inconsistency in the graphics of Java Abstract Window Toolkit (AWT)/Swing among different Java runtime environments (JREs) on Windows XP. This phenomenon makes it difficult to predict the performance of Java game applications. Therefore, they proposed a portable AWT/Swing architecture, called CYC Window ...

متن کامل

Functionally Modeled User Interfaces

Fruit is a new user interface toolkit based on a formal model of user interfaces. This formal basis enables us to write simple, concise executable specifications of interactive applications. This paper presents the Fruit model and several example specifications. We consider one example (a basic media controller) in detail, and contrast the executable specification style of Fruit with a more tra...

متن کامل

JEmacs-The Java/Scheme-based Emacs

JEmacs is a re-implementation of the Emacs programmable text editor. It is written in Java, and uses the Swing GUI toolkit. Emacs is based on the extension language Emacs Lisp (Elisp), which is a dynamicallyscoped member of the Lisp family. JEmacs supports Elisp, as well as the use of Scheme, a more modern statically-scoped Lisp dialect. Both languages get compiled to Java bytecodes, either in ...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:
  • Softw., Pract. Exper.

دوره 38  شماره 

صفحات  -

تاریخ انتشار 2008